#ifndef _C_GL_SHADER_H_
#define _C_GL_SHADER_H_

#include "..\glew\glew.h"

#include "..\cuCommon\cuTypes.h"

class CglShader
{
public:
    CglShader(void);
    ~CglShader(void);

    bool Create(char *str, GLenum type, GLenum gsIn = GL_POINTS, GLenum gsOut = GL_TRIANGLE_STRIP);
    bool CreateFromFile(char *fname, GLenum type, GLenum gsIn = GL_POINTS, GLenum gsOut = GL_TRIANGLE_STRIP);
    void Delete(void);

    GLhandleARB Id() { return m_ID; }
    GLhandleARB m_ID;

    int8 m_Log[1024];
    int32 m_LogLength;
};

#endif